Image reading apparatus, control method thereof, and storage medium

ABSTRACT

An object of one embodiment of the present invention is to accurately derive an inclination of a line image sensor. One embodiment of the present invention is an image reading apparatus including: a line image sensor in which reading elements for reading an image are arrayed in a predetermined direction; a first derivation unit configured to, based on read data acquired by reading a chart on which a plurality of dot patterns is printed with the line image sensor, derive coordinates of each of the plurality of dot patterns; a second derivation unit configured to derive an inclination angle of the line image sensor based on the coordinates derived by the first derivation unit; and a first calculation unit configured to calculate a first correction value for correcting the inclination of the line image sensor based on the inclination angle derived by the second derivation unit.

BACKGROUND OF THE INVENTION Field of the Invention

The present application relates to image correction in an image readingapparatus having a line image sensor.

Description of the Related Art

For an image reading apparatus for a large size document, generally, aconfiguration is adopted whose cost merit is great and which uses aplurality of small size line image sensors. Because a plurality of lineimage sensors is used, it is necessary to perform processing to connectdata read by each line image sensor. At this time, in a case where thereis an error component due to an inclination of the line image sensor, anerror occurs in the connecting processing.

FIG. 19A to FIG. 19C show a general configuration of an image readingapparatus using a plurality of line image sensors and examples ofreading. As shown in FIG. 19A, the configuration is such that a document110 is conveyed by an upstream-side document conveyance roller 107 and adownstream-side document conveyance roller 108 and reading is performedby a plurality of line image sensors 106. At that time, processing toconnect the results of reading by the plurality of the line imagesensors 106 is performed at a connecting position 113, but in a casewhere there exits positional misalignment 1901 of the line image sensor106, an inclination of the line image sensor 106 occurs and an erroroccurs at the connecting position. For example, as shown in FIG. 19B, ina case where a straight-line pattern 1902 is read, due to theinclination of each line image sensor 106, the pattern is read as azigzag line 1903 in which misalignment in connecting position occurs atthe time of connection.

For the above-described problem, accurate connection is implemented byderiving in advance an error component at the time of reading due to theinclination of the line image sensor by processing called calibration.In Japanese Patent Laid-Open No. 2007-304653, in order to performcalibration, by using a document including a combination ofstraight-line patterns, reading of the patterns is performed and basedon the positional data on the read straight-line patterns, theinclination of the line image sensor is derived. At this time, it isrequired to derive the inclination of each line image sensor with a highaccuracy.

SUMMARY OF THE INVENTION

However, in Japanese Patent Laid-Open No. 2007-304653, in a case wherethere exits a diameter error of a document conveyance roller, inaddition to the inclination at the time of document setting inperforming calibration, the diameter error affects the reading of thecalibration document itself as an error component. Because of that, thisprevents the error inherent in the image sensor from being found, andtherefore, there is a concern about the accuracy of calibration.

Consequently, in view of the above-described problem, an object of oneembodiment of the present invention is to perform calibration in animage reading apparatus having a line image sensor with a high accuracy.

One embodiment of the present invention is an image reading apparatusincluding: a line image sensor in which reading elements for reading animage are arrayed in a predetermined direction; a first derivation unitconfigured to, based on read data acquired by reading a chart on which aplurality of dot patterns is printed with the line image sensor, derivecoordinates of each of the plurality of dot patterns; a secondderivation unit configured to derive an inclination angle of the lineimage sensor based on the coordinates derived by the first derivationunit; and a first calculation unit configured to calculate a firstcorrection value for correcting the inclination of the line image sensorbased on the inclination angle derived by the second derivation unit,and on the chart, the plurality of dot patterns is arranged isolatedlyfrom one another, the plurality of dot patterns includes at least onedot pattern group including one reference dot pattern and a plurality ofperipheral dot patterns around the reference dot pattern, and theplurality of peripheral dot patterns is arranged so that a sum ofcoordinates from reference coordinates is zero in a case wherecoordinates of the reference dot pattern are taken to be the referencecoordinates.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A to FIG. 1C are diagrams showing a general configuration of animage reading apparatus in a first embodiment, and the like;

FIG. 2 is a block diagram showing a hardware configuration of the imagereading apparatus in the first embodiment;

FIG. 3 is a flowchart of calibration processing of the image readingapparatus in the first embodiment;

FIG. 4A and FIG. 4B are diagrams showing a correction value calculationprocessing pattern;

FIG. 5 is a flowchart explaining correction value calculation processingin the first embodiment;

FIG. 6 is a diagram showing a reading-target circular dot pattern in thefirst embodiment;

FIG. 7 is a flowchart of processing to derive center coordinates of thecircular dot pattern in the first embodiment;

FIG. 8A to FIG. 8D are diagrams showing patterns used for derivation ofan inclination angle of a CIS in the first embodiment;

FIG. 9 is a diagram showing an algorithm used for derivation of theinclination angle of the CIS in the first embodiment;

FIG. 10 is a flowchart explaining correction value calculationaccompanied by derivation of the inclination angle of the CIS in thefirst embodiment;

FIG. 11A to FIG. 11C are diagrams showing misalignment at the time ofdocument setting and arrangement of circular dot patterns in the firstembodiment;

FIG. 12 is a diagram showing an internal structure of the CIS andarrangement of circular dot patterns in the first embodiment;

FIG. 13A and FIG. 13B are diagrams explaining a pattern for suppressingthe influence of eccentricity of a document conveyance roller in asecond embodiment;

FIG. 14 is a flowchart of processing for suppressing the influence ofeccentricity of the document conveyance roller in the second embodiment;

FIG. 15 is a diagram showing arrangement of circular dot patterns forsuppressing the influence of eccentricity of a document conveyanceroller in a third embodiment;

FIG. 16 is a flowchart of derivation processing of a sub scanningdirection magnification in a fourth embodiment;

FIG. 17 is an image diagram showing a dot pattern used in the fourthembodiment and results of reading the dot pattern;

FIG. 18 is a diagram explaining coordinate conversion in the fourthembodiment;

FIG. 19A to FIG. 19C are diagrams showing a general configuration of animage reading apparatus having a plurality of line image sensors and anexample of reading results;

FIG. 20A to FIG. 20C are diagrams explaining coordinate conversion basedon an inclination of the CIS in a fifth embodiment;

FIG. 21A to FIG. 21C are diagrams explaining derivation of a connectingposition between CIS's in the fifth embodiment;

FIG. 22 is a flowchart showing a flow of derivation of a correctionvalue for correcting a connecting position in the fifth embodiment;

FIG. 23A to FIG. 23C are diagrams showing arrangement of circular dotpatterns in a case where there is misalignment at the time of documentsetting;

FIG. 24A to FIG. 24C are diagrams explaining a countermeasure againsterroneous derivation of a connecting position in the fifth embodiment;

FIG. 25 is a diagram showing an internal structure of the CIS andarrangement of circular dot patterns in the fifth embodiment;

FIG. 26A and FIG. 26B are diagrams explaining arrangement of circulardot patterns for suppressing the influence of eccentricity of a documentconveyance roller used in a sixth embodiment;

FIG. 27 is a flowchart of processing for suppressing the influence ofeccentricity of the document conveyance roller in the sixth embodiment;

FIG. 28A to FIG. 28C are diagrams explaining an inter-dot distance afterinclination angle derivation;

FIG. 29 is a flowchart of derivation processing of an inter-chip step ina seventh embodiment;

FIG. 30A and FIG. 30B are diagrams showing results of deriving theinter-chip step in the seventh embodiment;

FIG. 31A and FIG. 31B are diagrams explaining a problem in the seventhembodiment;

FIG. 32 is a flowchart of suppression processing of the influence ofeccentricity in a ninth embodiment; and

FIG. 33 is a diagram showing a relationship between an amount ofconveyance Δy per unit section and an accumulated value y thereof.

DESCRIPTION OF THE EMBODIMENTS

In the following, embodiments for embodying the present application areexplained with reference to the drawings. All the embodiments areexplained by taking a sheet-feed type image reading apparatus as anexample, but the application range of the present application is notlimited to this and it is also possible to apply the present applicationto a flatbed type image reading apparatus.

First Embodiment

In the present embodiment, an aspect is explained in which theinclination of a line image sensor is derived by reading in advance aspecific pattern, that is, the inclination of the line image sensor isderived by using a plurality of coordinates within the pattern.

<Configuration of Image Reading Apparatus>

First, the basic configuration of the image reading apparatus isexplained by using the general diagram of the image reading apparatus, adiagram showing the image reading aspect, and the like.

FIG. 1A is a perspective diagram showing an external appearance of asheet-feed type scanner 100 as one example of the image readingapparatus in the present embodiment. As shown in FIG. 1A, the scanner100 has a document feed port 101 and a document feed table 102 on thefront side of the main body. A user places the tip portion of a documenton the document feed table 102 so that the center portion of thedocument is located at the center of the feed port and inserts thedocument into the document feed port 101 so that the document slides onthe table. The document feed port 101 is designed so as to permit, to acertain extent, positional misalignment, an inclination and the like atthe time of insertion with respect to the document width in the mainscanning direction, which the scanner 100 can read. The configuration ofthe feed path of a document will be described later by using FIG. 1B.For the sake of explanation, the coordinate axes are set as shown inFIG. 1A and the coordinate axes apply similarly to the other drawings.

The scanner 100 comprises an operation unit 103 on the top surface ofthe main body, which includes physical keys, a touch panel, an LCD paneland the like, and it is made possible to set reading conditions andinput a document size. Further, on the top surface of the scanner 100,an upper cover 104 is provided and by the upper cover 104 openingupward, it is made possible to access the reading unit and the like, andtherefore, it is possible to perform maintenance of the main body.

FIG. 1B and FIG. 1C are schematic diagrams showing the internalconfiguration of the scanner 100 and FIG. 1B shows a sectional diagramand FIG. 1C shows a top plan diagram. In the sectional diagram in FIG.1B, the left side is the upstream side of the document feed and theright side is the downstream side and a document is conveyed in the+y-direction. The document 110 fed via the document feed table 102 by auser is discharged from the rear side of the main body through a planarconveyance path.

A document detection sensor 105 detects the insertion of the document110 and in a case where the insertion of the document 110 is detected, acontrol unit 202 (see FIG. 2) of the scanner 100 causes the document tobe pulled into the inside of the main body by rotating the upstream-sideconveyance roller 107. An end portion detection sensor 112 is used todetect the tip portion of the document 110 pulled into the inside of themain body by the rotation of the upstream-side document conveyanceroller 107. Further, the detection results of the end portion detectionsensor 112 are also used to determine the reading start position of thedocument 110 and to detect the position of the rear end portion of thedocument 110.

Inside the main body, the document 110 passes between a glass plate 109and a document pressing plate 111. The document pressing plate 111functions to press the document 110 against the glass plate 109 by apredetermined pressure. The CIS 106 is a line image sensor in whichlight receiving elements are arrayed in the main scanning direction(X-direction in FIG. 1C) and includes a plurality of chips including aplurality of light receiving elements. The reading surface of the CIS106 is in opposition to the glass plate 109 and designed so that thereading focus position is located at the contact surface between thedocument 110 and the glass plate 109.

The downstream-side document conveyance roller 108 is configured so asto follow the upstream-side document conveyance roller 107 by a belt,not shown schematically, and has a role to discharge the document thatcomes out of the pressing area in which the document pressing plate 111presses the document against the glass plate 109 to the downstream side.The control unit 202, to be described later, includes each detectionsensor, a motor, not shown schematically, for rotating the upstream-sidedocument conveyance roller 107, a circuit substrate for controlling theCIS 106 and the operation unit 103, and the like.

The top plan diagram in FIG. 1C shows that the scanner 100 has aconfiguration in which a plurality of the CIS's 106 (in this example,five CIS's) is arranged in a staggered pattern in the main scanningdirection. The scanner 100 performs reading with each CIS 106 and thecontrol unit 202 performs processing to connect the data read with eachCIS 106 at the connecting position 113.

FIG. 2 is a block diagram showing a hardware configuration of thescanner 100 in the present embodiment. The control unit 202 thatcontrols image reading and the like in the scanner 100 has a CPU 204, amemory 208, a motor driver 207, an interface (hereinafter, IF) unit 203,an A/D conversion unit 206, and an electric power source unit 205. Theoperation unit 103 includes an LCD (abbreviation of Liquid CrystalDisplay)-attached touch panel. On the LCD of the operation unit 103,information relating to a document to be read in accordance withinstructions from the CPU 204, settings of the reading apparatus, andthe like is displayed. Further, it is possible for a user to performinput for the scanner 100, for example, change various settings, by atouch panel operation for the operation unit 103 while checking theinformation displayed on the LCD of the operation unit 103.

A conveyance motor 201 is controlled by the CPU 204 via the motor driver207 and rotates the upstream-side conveyance roller 107 and thedownstream-side conveyance roller 108. The configuration is such thatthe outputs of the document detection sensor 105 and the end portiondetection sensor 112 are input to the CPU 204 and the CPU 204 performscontrol, such as determination of the drive timing of the plurality ofthe CIS's 106, based on the change in the output signals of thesesensors and the state of the conveyance motor 201.

The plurality of the CIS's 106 outputs the read image to the controlunit 202 as an analog signal. The analog signal output from theplurality of the CIS's 106 is converted into a digital signal in eachA/D conversion unit 206 and input to the CPU 204. It is possible for theCPU 204 to process the data converted into a digital signal in each A/Dconversion unit 206 and transmit it as image data to an external deviceconnected by USB or LAN via the IF unit 203. The electric power sourceunit 205 generates a voltage necessary for each unit and supplies power.It is possible for the memory 208 to store image data corresponding to aplurality of lines.

<Calibration>

In the following, a flow of performing reading of the document 110 byusing the CIS 106 and correction value calculation is explained by usingFIG. 3. As regards the correction value calculation timing, it may alsobe possible to calculate the correction value in advance or calculatethe correction value each time of reading.

In a case where the correction value is calculated in advance, thecorrection value is calculated by reading a predetermined documentprepared at the time of factory shipping or by a user and after this,the same correction value is applied each time of reading. In this case,it is not necessary to calculate the correction value each time ofreading, and therefore, it is possible to make an attempt to reduce thereading time.

On the other hand, in a case where the correction value is calculatedeach time of reading, the correction value is calculated by reading apredetermined document before reading is performed, or by reading adocument on which a pattern for correction value calculation is printedat the header portion of the document. In this case, it is made possibleto correct the current error component at any time, and therefore, it ispossible to implement reading with a high accuracy.

First, at step S301, the CPU 204 receives an input by pressing down acalibration start button on the operation unit 103 by a user. By thisstep, the scanner 100 enters a state of waiting for insertion of adedicated document to be used for calibration. In the following, forsimplicity, “step S-” is abbreviated to “S-”.

At S302, the CPU 204 determines whether the insertion of the document110 that is set by a user has been detected. In a case where the resultsof the determination at this step are affirmative, the processingadvances to 5303. On the other hand, in a case where the results of thedetermination at this step are negative, the insertion detectiondetermination of the document 110 is performed again.

At S303, the CPU 204 conveys the document 110 to the reading startposition by controlling the conveyance motor 201.

At S304, the CPU 204 starts the image reading operation and saves thedata (referred to as read data) acquired by the reading in the memory208.

At S305, the CPU 204 determines whether reading of a predeterminedlength has been completed. In a case where the results of thedetermination at this step are affirmative, the processing advances toS306. On the other hand, in a case where the results of thedetermination at this step are negative (that is, in a case wherereading of a predetermined length has not been completed), the readingoperation is continued until the reading of a predetermined length iscompleted.

At S306, the CPU 204 terminates the image reading operation and causesthe calibration document 110 to be conveyed up to the sheet dischargeposition.

At S307, the CPU 204 performs correction value calculation processing.The correction value obtained at this step is stored in the memory 208and read and applied at the time of the normal reading operation.

Following the above, a flow of performing correction value calculationbased on the read pattern (details of S307 in FIG. 3) is explained byusing FIG. 4A and FIG. 5. FIG. 4A is a diagram showing a correctionvalue calculation processing pattern (also called calibration chart) inthe present embodiment. As shown in FIG. 4A, on the calibration chart, aplurality of circular dot patterns 401 including a plurality of ON dots(whose pixel value is 1) is printed isolatedly from one another and thecircular dot patterns 401 are read while conveying the document by thedocument conveyance roller. As the pattern arrangement on the document,the plurality of the circular dot patterns 401 is printed across thewidth of the readable area (indicated by Xr) and the lengthcorresponding to the circumference of the document conveyance roller 104(the circumferential length is indicated by Yr). It may also be possibleto print the plurality of the dot patterns 401 corresponding to a lengthlonger than the circumference of the document conveyance roller 104.Further, in the present specification, the circular dot pattern 401 isalso called a grid point.

First, at S501, the CPU 204 functions as a derivation unit configured toderive center coordinates of the circular dot pattern 401 and derivesthe center coordinates of each circular dot pattern 401 from the readdata acquired by image reading. In the derivation processing of eachcorrection value, to be described later, the center coordinates derivedat this step are used.

At S502, the CPU 204 performs derivation processing of an inclinationangle of the CIS 106. Specifically, the inclination angle is calculatedby making use of that the plurality of the circular dot patterns isarranged concentrically so that the sum of the coordinates from thereference coordinates is zero. The derivation processing of theinclination angle at this step is processing for suppressingmisalignment in the connecting position 113 at the time of connectingthe read data. By the information on the inclination angle of the CIS106, which is found at this step, it is made possible to perform theconnection of the read images later with a high accuracy. The derivationprocessing of each correction value, to be described later, is performedby applying in advance the correction value in accordance with theinclination angle of the CIS 106, which is derived at S502.

At S503, the CPU 204 performs derivation processing of a sub scanningdirection magnification determined by the document conveyance roller.The derivation processing of the sub scanning direction magnificationdetermined by the document conveyance roller is processing to derive asub scanning direction magnification due to diameter errors of thedocument conveyance rollers 107, 108, which affect the entire readingresults of the scanner 100.

At S504, the CPU 204 performs processing to suppress the influence dueto the eccentricity of the document conveyance roller. This step is, forexample, processing for correcting a reading error in the sub scanningdirection due to eccentricity of the document conveyance roller, whichaffects the entire reading results of the scanner 100, by finding aneccentricity rate of the document conveyance roller, and the like.

At S505, the CPU 204 performs derivation processing of a main scanningdirection magnification due to an inter-chip step. The derivationprocessing of the main scanning direction magnification due to theinter-chip step is processing for correcting a reading error in the mainscanning direction due to a gap between each chip located inside the CIS106.

At S506, the CPU 204 performs derivation processing of a connectingposition. The derivation processing of the connecting position isprocessing for accurately connecting the reading results of each CIS106, and processing to derive the connecting position 113 by applying inadvance the correction value corresponding to each step that is foundfrom the results at S502 to S505. By the above, the calibrationaccompanied by the calculation of each correction value is completed.

<Center Coordinates Derivation Processing>

In the following, the processing (S501 in FIG. 5) to derive the centercoordinates of the circular dot pattern based on the read data isexplained specifically by using the circular dot pattern 401 shown inFIG. 6 and the flowchart in FIG. 7. As shown in FIG. 6, the circular dotpattern 401 needs to be a size to a certain level for the reading-targetpixel by the scanner.

First, at S701, the CPU 204 extracts all the pixel data in the mainscanning direction (1) of the CIS 106 at the position of interest in thesub scanning direction (2) of the CIS 106 among all the read data.

At S702, the CPU 204 determines whether there are pixels in successionin the main scanning direction (1) whose tone value exceeds a thresholdvalue Xt based on the pixel data extracted at S701 and performsbinarization for each pixel as shown in FIG. 6. In a case where theresults of the determination at this step are affirmative, theprocessing advances to S703 and on the other hand, in a case where thedetermination results are negative, the processing advances to S705. Thethreshold value Xt that is used at this step is set in advance and thedata thereon is saved in the memory 208.

At S703, the CPU 204 derives the position of the pixel located at thecenter of the pixels in succession whose tone value exceeds thethreshold value Xt as the center coordinates in the main scanningdirection (1).

At S704, the CPU 204 determines whether the derivation of the centercoordinates in the main scanning direction (1) has been completed forall the lines in the sub scanning direction (2).

At S705, the CPU 204 advances the position of interest by one pixel inthe sub scanning direction (2).

At S706, the CPU 204 calculates an average of the derived centercoordinates in the main scanning direction and sets the found averagevalue as center coordinates 601 of the circular dot pattern 401.

It is possible to deal with a case where a reading error due to dust istaken into consideration at the time of finding the center coordinatesin the main scanning direction by increasing the size of the dotpattern. Further, in a case where a reading error due to an inter-chipgap of the CIS 106 is taken into consideration, it is necessary to findthe center coordinates by selecting a portion that does not extend overtwo or more chips at the time of finding the coordinates in the mainscanning direction (1).

It is desirable for the shape of the dot pattern to be an approximatecircle as shown in FIG. 6. The reason is that the approximate circle isa shape that is hardly affected by an error component during reading atthe time of deriving the center coordinates 601. For example, in a casewhere there is an inclination at the time of document setting, on acondition that the shape of the dot pattern is a square, it is difficultto determine which pixels of the pixel data in the main scanningdirection (1) are those in succession in the main scanning direction (1)whose tone value exceeds the threshold value Xt for the read image dataof the CIS 106. It is easier to determine the image data in successionin the main scanning direction (1) whose tone value exceeds thethreshold value Xt in a case where the shape is an approximate circlerather than a square. Further, in a case where the dot pattern is anapproximate circle, it may be possible not to perform the processing toderive the center coordinates for all the lines in the sub scanningdirection (2) as at S704 to S706 in FIG. 7, That is, on the premise thatthe dot pattern is an approximate circle, it is possible to derive thecenter coordinates 601 of the dot pattern by estimating the pixel datain succession in the main scanning direction (1) whose tone valueexceeds the threshold value Xt, and therefore, it is made possible toreduce the time required for derivation of the center coordinates.

<Derivation of Inclination Angle of CIS>

By using the center coordinates 601 derived by the center coordinatesderivation processing described previously, the processing at S502 toS506 is performed. As described previously, in the present embodiment,the inclination angle of the CIS 106 is derived in advance, andtherefore, in the following, of the flow of the correction valuecalculation shown in FIG. 5, the derivation processing of theinclination angle of the CIS at S502 is explained.

Here, by using the inclination angle derivation pattern of the CIS 106shown in FIG. 8A, the algorithm shown in FIG. 9, and the flowchart shownin FIG. 10, a flow of deriving the inclination angle of the CIS 106 byreading the circular dot pattern 401 is shown. The circular dot patterngroup shown in FIG. 8A includes a circular dot pattern at the center(referred to as a reference dot pattern) and four circular dot patternsaround the reference dot pattern (referred to as peripheral dotpatterns). By using the arrangement of the circular dot patterns 401such as this, it is made possible to accurately derive the inclinationof the CIS 106 irrespective of the inclination at the time of documentsetting and the diameter error of the document conveyance roller.

First, at S1001, the CPU 204 extracts a predetermined number (assumed tobe X) of center coordinates of the circular dot pattern 401 for each CIS106.

At S1002, the CPU 204 sets, among the predetermined number X ofcoordinates, the coordinates closest to the center as referencecoordinates P and the coordinates around the reference coordinates asinclination angle correction value calculation coordinates A1 to AN foreach CIS 106. FIG. 8A shows a case where the reference coordinates P aretaken as a center and the four points whose inclination angle correctionvalue calculation coordinates are A1 to A4 exist therearound.

At S1003, the CPU 204 performs straight-line approximation that takesthe reference coordinates P as a transit point by using the referencecoordinates P and the inclination angle correction value calculationcoordinates A1 to AN, which are set at S1002.

A change in coordinates at the time of performing straight-lineapproximation and the algorithm of inclination angle derivation areexplained by using FIG. 8B to FIG. 8D and FIG. 9. FIG. 8B shows acoordinate change in the inclination angle correction value calculationcoordinates with the reference coordinates P being taken as a referencein a case where the document 110 is read in an inclined state, showing acase where a document inclination angle θ=45°. FIG. 8C shows acoordinate change in the inclination angle correction value calculationcoordinates with the reference coordinates P being taken as a referencein a case where there is a diameter error of the upstream-side documentconveyance roller 107, showing a case where the sub scanning directionmagnification determined by the document conveyance roller is μ.

FIG. 9 shows formulas used in the derivation algorithm of an inclinationangle φ of the CIS 106. Formula (1) indicates that the sum of eachinclination angle correction value calculation coordinates with thereference coordinates P being taken as a reference is zero. Thecalculation formula of formula (1) does not change even in a case wherethere is an influence of the document inclination angle θ and the subscanning direction magnification μ determined by the document conveyanceroller, which are shown in FIG. 8B and FIG. 8C.

Next, FIG. 8D shows a coordinate change in the inclination anglecorrection value calculation coordinates with the reference coordinatesP being taken as a reference in a case where reading is performed in astate where the inclination angle φ of the CIS 106 exists. Formula (2)to formula (5) in FIG. 9 show coordinates after the change at the timeof the coordinate change in the inclination angle correction valuecalculation coordinates due to the inclination angle φ of the CIS 106.

Formula (6) in FIG. 9 is an approximate formula used at the time ofperforming straight-line approximation by the inclination anglecorrection value calculation coordinates A1 to AN with the referencecoordinates P being taken as a reference, which is performed at S1003,and formula (7) in FIG. 9 shows the slope and the intercept in formula(6). Formulas obtained by substituting formula (2) to formula (5) ineach constituent formula in formula (7) in FIG. 9 are formula (8) toformula (10).

In a case where formula (8) to formula (10) in FIG. 9 are substituted informula (7), it is possible to simplify formula (7) to formula (11).Then, a formula used to derive the inclination angle φ of the CIS 106based on the slope indicated in formula (11) is formula (12).

At S1003, the CPU 204 calculates a slope a of the straight line byperforming straight-line approximation in accordance with the algorithmshown in FIG. 9.

At S1004, the CPU 204 calculates the inclination angle φ of the CIS 106by using formula (12) based on a calculated at S1003.

At S1005, the CPU 204 calculates a correction value for correcting theinclination angle of the CIS 106 based on φ calculated at S1004.

At S1006, the CPU 204 saves the correction value calculated at S1005 bywriting it to the memory 208.

As a method of applying a correction value, it is possible to adopt amethod of performing reading while changing the access portion of thememory each time of reading based on the correction value written to thememory at S1006, or a method of physically adjusting the inclination ofthe CIS 106. Alternatively, it may also be possible to directly changethe access portion of the memory without finding the inclination angle φof the CIS 106 by using the slope a of the straight line calculated atS1003, or to physically adjust the inclination of the CIS 106.

FIG. 11A to FIG. 11C show misalignment at the time of document setting,and dot pattern arrangement. Here, a case is discussed wheremisalignment in document setting 1101 occurs as a result of a usersetting the document 110 as shown in FIG. 11A. In the case such as this,with the configuration in which only one pattern including the centergrid point and the four peripheral grid points thereof as shown in FIG.8A is arranged for the CIS 106, there is a possibility that this onepattern is not accommodated within the reading width depending on thelength of the CIS 106.

Consequently, as shown in FIG. 11B, the circular dot patterns (gridpoints) are arranged so that the CIS 106 reads two patterns (firstinclination angle correction value calculation processing pattern 1102,second inclination angle correction value calculation processing pattern1103). Due to this, even in a case where the misalignment at the time ofdocument setting 1101 exists, it is made possible to derive theinclination angle φ of the CIS 106. In a case where it is possible toread two patterns at the time of deriving the inclination angle φ, asshown in FIG. 11C, the inclination angle φ of the CIS 106 is derived byextracting the predetermined number X of coordinates close from centercoordinates 1104 of the reading width. In the case of FIG. 11C,coordinates Xg1 are close to the center coordinates 1104 compared tocoordinates Xg2. Consequently, the first inclination angle correctionvalue calculation processing pattern 1102 whose center is thecoordinates Xg1 is used and the inclination angle φ is derived by takingthe coordinates Xg1 as the reference coordinates P.

FIG. 12 shows the internal structure of the CIS 106 and the arrangementof an inclination angle correction value calculation processing patternincluding a plurality of (in this example, five) circular dot patterns.Generally, the CIS 106 includes a plurality of chips and for each chip1201, a chip inclination angle θc and positional misalignment dx betweenchips exist. As shown in FIG. 12, the width of the chip (referred to aschip length Cx) is greater than the width of the circular dot patterngroup (referred to as pattern length Px).

In FIG. 10, the derivation of the inclination angle of the CIS 106 isshown, but as shown in FIG. 12, by arranging the circular dot patternsso that the inclination angle can be derived for each chip 1201, it ispossible to derive the inclination θc of each chip 1201 by ignoring theinfluence of the gap dx between chips. In a case where it is desired tosuppress the influence due to the misalignment in document setting 1101as shown in FIG. 11A to FIG. 11C, it is possible to deal with the caseby arranging two inclination angle correction value calculationprocessing patterns for the chip 1201.

<Effects and the Like of the Present Embodiment>

In the example described previously, explanation is given by taking theimage reading apparatus having a plurality of CIS's, but it is alsopossible to apply the present embodiment to an image reading apparatushaving only one CIS.

According to the present embodiment, it is possible to accurately derivethe inclination of the CIS 106 irrespective of the inclination at thetime of document setting and the diameter error of the documentconveyance roller.

Second Embodiment

In the present embodiment, even in a case where there is eccentricity inthe document conveyance roller, the inclination angle of the CIS 106 isderived accurately. In detail, by using a plurality of patterns existingalong the conveyance direction of the upstream-side document conveyanceroller 107, the inclination of the CIS 106 is derived. In the following,differences from the already-described embodiment are explained mainlyand explanation of the same contents as those of the already-describedembodiment is omitted appropriately.

In the following, by using patterns for suppressing the influence ofeccentricity of the document conveyance roller shown in FIG. 13A andFIG. 13B and a flowchart shown in FIG. 14, processing to accuratelyderive the inclination angle of the CIS 106 even in a case where thereis eccentricity in the document conveyance roller is explained.

FIG. 13A shows results of reading a pattern in a case where there iseccentricity in the document conveyance roller. By the center positionof rotation misaligning due to the eccentricity of the documentconveyance roller, the amount of conveyance by the document conveyanceroller changes. Because of this, in addition to a position Oa at whichthe amount of conveyance is average, a position Ob at which the amountof conveyance is large and a position Oc at which the amount ofconveyance is small exist along the circumference of the documentconveyance roller. An example of results of reading the circular dotpatterns 401 in a situation in which the amount of conveyance changesdepending on the position such as this is the pattern shown in FIG. 13A.By the reading at the position Ob at which the amount of conveyance ofthe document conveyance roller is large, an interval Dga betweencircular dot patterns in close proximity is short. On the other hand, bythe reading at the position Oc at which the amount conveyance is small,an interval Dgb between circular dot patterns in close proximity iswide. In the state such as this, it is not possible to accurately derivethe inclination angle of the CIS 106.

FIG. 13B shows an aspect in which the inclination angle of the CIS 106is derived by suppressing the influence of eccentricity of the documentconveyance roller. For a circumferential length Yr of the documentconveyance roller, a circular dot pattern group (referred to asinclination angle correction value calculation processing patterns Za,Zb, Zc, Zd) in which the circular dot patterns 401 are arranged is used.The inclination angle of the CIS 106 is derived with each of thesepatterns.

First, at S1401, the CPU 204 extracts X grid point coordinates from thereading position of data to be read (in other words, from theinclination angle correction value calculation processing pattern ofinterest). In the example in FIG. 13B, the first pattern of interest isthe inclination angle correction value calculation processing pattern Zaexisting at the uppermost portion. Each time the processing at S1401 isperformed repeatedly (NO at S1405→S1406→S1401), the pattern of interestchanges to the inclination angle correction value calculation processingpatterns Zb, Zc, and Zd. Each piece of processing at S1401 to S1409 isperformed for each CIS 106.

At S1402, the CPU 204 sets, among the X grid point coordinates extractedat S1401, the coordinates closest to the center as the referencecoordinates P and the coordinates around the reference coordinates P asthe inclination angle correction value calculation coordinates A1 to AN.

At S1403, the CPU 204 performs straight-line approximation that takesthe reference coordinates P as a transit point by using the referencecoordinates P and the inclination angle correction value calculationcoordinates A1 to AN, which are set at S1402.

At S1404, the CPU 204 calculates the inclination angle φ of the CIS 106based on the slope a of the straight line calculated by performingstraight-line approximation in accordance with the algorithm shown inFIG. 9 at S1403.

At S1405, the CPU 204 determines whether the processing corresponding tothe circumference of the document conveyance roller has been completed.In a case where the results of the determination at this step areaffirmative, the processing advances to S1407. On the other hand, in acase where the results of the determination at this step are negative,the processing advances to S1406.

At S1406, the CPU 204 advances the reading position of data to be readto the position at which the pattern to be read next exists.

At S1407, the CPU 204 averages the inclination angles φ of the CIS 106calculated for each of the plurality of the inclination angle correctionvalue calculation processing patterns (in this example, the inclinationangle correction value calculation processing patterns Za to Zd).

At S1408, the CPU 204 calculates a correction value for correcting theinclination angle of the CIS 106 based on the inclination angle φaveraged at S1407.

At S1409, the CPU 204 saves the correction value for correcting theinclination angle calculated at 51408 in the memory 208 by writing itthereto.

<Effects and the Like of the Present Embodiment>

It is possible to apply the present embodiment to an image readingapparatus having only one CIS.

In the present embodiment, a plurality of inclination angles of the CIS106 is derived for the length corresponding to one circumference of thedocument conveyance roller and the average of the derived plurality ofinclination angles is calculated. Due to this, it is possible tosuppress the influence of eccentricity of the document conveyance rollerand accurately derive the inclination of the CIS 106. It is possible toaccurately derive the inclination of the CIS 106 by making the intervalbetween the circular dot patterns 401 as short as possible andextracting the predetermined number X of coordinates of the circular dotpattern 401 in a wider range because of the short interval.

Third Embodiment

In the present embodiment, even in a case where there is eccentricity inthe document conveyance roller, the inclination angle of the CIS 106 isderived accurately. In detail, the inclination of the CIS 106 is derivedby using the circular dot pattern (grid point) existing at each intervalof the circumferential length of the roller along the conveyancedirection of the upstream-side document conveyance roller 107.

In the following, processing to accurately derive the inclination angleof the CIS 106 irrespective of the influence of eccentricity of thedocument conveyance roller by using the pattern that suppresses theinfluence of eccentricity of the document conveyance roller shown inFIG. 15 is explained. FIG. 15 shows reading results of an inclinationangle correction value calculation processing pattern Zr in a case wherethere is eccentricity of the document conveyance roller. Regardless ofthe presence/absence of eccentricity of the document conveyance roller,the amount of conveyance does not change at the positions correspondingto integer multiples of the circumferential length, and therefore,misalignment in pattern reading does not occur. Because of this, a dotpattern interval Dgc and a dot pattern interval Dgd are equal and arethe circumferential length Yr of the document conveyance roller.

As above, by using the inclination angle correction value calculationprocessing pattern Zr in which the circular dot pattern is arranged ateach position corresponding to integer multiples of the circumferentiallength, it is possible to accurately derive the inclination of the CIS106 without being affected by the eccentricity of the documentconveyance roller. The flow of the derivation of the inclination angleof the CIS 106 in the present embodiment is the same as that in FIG. 10,and therefore, explanation is omitted. Further, it is possible to applythe present embodiment to an image reading apparatus having only oneCIS.

Fourth Embodiment

In the present embodiment, a correction value other than the inclinationangle is calculated by making use of the correction value calculationprocessing pattern used to derive the inclination angle of the CIS 106shown in FIG. 4A. In detail, the sub scanning direction magnificationdue to a diameter error of the upstream-side document conveyance roller107 is derived accurately. It is necessary to perform the derivation ofthe diameter error in the present embodiment after the derivation of theinclination angle of the CIS 106 explained in the first to thirdembodiments.

<Derivation Processing of Sub Scanning Direction Magnification>

In the following, the derivation of the sub scanning directionmagnification in the present embodiment is explained by using FIG. 16.

At S1601, the CPU 204 determines a main scanning section, which is thederivation target of the sub scanning direction magnification. The mainscanning section that is determined at this step is a main scanning areathat is read by one of a plurality of within-CIS chips configuring theone CIS 106.

At S1602, the CPU 204 searches for the center coordinates of thecircular dot pattern included in the main scanning section determined atS1601 in the sub scanning direction. Then, from among the centercoordinates detected by the search, first, a reference point and a mainscanning distance-measuring point are selected. The coordinates of thereference point and the main scanning distance-measuring point are thecenter coordinates of the circular dot pattern whose coordinates in thesub scanning direction on the chart are the same. As the reference pointand the main scanning distance-measuring point, points in a positionalrelationship in which the points sandwich the pixel in between areselected, which is located at the center of the main scanning section ofthe sensor chip that performs reading of a predetermined main scanningsection. Here, among the selected two center coordinates, the centercoordinates located on the main scanning direction reference side (toppixel side) are selected as the reference point and the other centercoordinates are selected as the main scanning distance-measuring point.

After the reference point and the main scanning distance-measuring pointare selected, a sub scanning distance-measuring point is selected. Asthe sub scanning distance-measuring point, the point at the position isselected whose coordinates in the main scanning direction on the chartare the center coordinates of the same circular dot pattern and at whichthe distance between the reference point and the main scanningdistance-measuring point and the distance between the reference pointand the sub scanning distance-measuring point are the same on the chart.

In FIG. 17, (a) shows a positional relationship between a chart on whichcircular dot patterns are printed and the chip 1201 within the CIS 106that performs reading. In FIG. 17, (b) shows a positional relationshipof the center coordinates of circular dot patterns, which are derivedbased on data obtained as the results of performing reading of thepattern shown in (a) in FIG. 17. Here, a state is shown where the centercoordinates of the circular dot patterns are read with misalignment inthe main scanning direction and the sub scanning direction,respectively, due to the inclination of the CIS 106 and the inclinationof the chart in the set document. In a case where A11 (x11, y11) isselected as the reference point for the data such as this, A12 (x12,y12) is selected as the main scanning distance-measuring point and A21(x21, y21) as the sub scanning distance-measuring point.

At S1603, the CPU 204 performs conversion into relative coordinates ofeach distance-measuring point with the reference point All being takenas a center. In a case where the coordinates of All after conversion istaken to be A11′ (0, 0), A12 is converted into A12′ (x12′, y12′) and A21into A21′ (x21′, y21′). At this time, x12′=x12−x11, y12′=y12−y11,x21′=x21−x11, and y21′=y21−y11 hold. In the following, specificexplanation is given by using these coordinates. FIG. 18 shows an imageof coordinates data after conversion.

At S1604, the CPU 204 performs correction for the coordinates convertedat S1603 (in this example, coordinates A12′, A21′ after conversion)based on the inclination information on the CIS 106 obtained by theimmediately previous correction value calculation. In a case where theinclination angle of the chip is found to be φ by the inclinationdetection of the CIS 106 performed immediately previously, A12′, A21′are converted into A12″ (x12″, y12″), A21″ (x21″, y21″), respectively,with the coordinates A11″ being taken as the reference point. Here, in acase where the inclination of the CIS 106 or the chip 1201 is restrictedmechanically and the tolerance does not affect the reading results, itis possible to omit the correction processing. By S1604, it is possibleto find the distance (referred to as main scanning direction distance)x21″ between the reference point and the converted main scanningdistance-measuring point A12″ and the distance (referred to as subscanning direction distance) y12″ between the reference point and theconverted sub scanning distance-measuring point A21″.

At S1605, the CPU 204 stores the main scanning direction distance x21″and the sub scanning direction distance y12″, which are found at S1604,in the memory as the distance data on the reference point A11.

The processing described so far is the flow of the processing to acquirethe conveyance data information on one reference point and the sameprocessing is also performed for the other center coordinates arrayed inthe sub scanning direction.

At S1606, the CPU 204 determines whether the center coordinates that canbe selected as the reference point remain based on the stored centercoordinates data. In a case where the results of the determination atthis step are affirmative, the processing advances to S1607. On theother hand, in a case where the results of the determination at thisstep are negative (that is, in a case where the selectable centercoordinates remain), the center coordinates of the circular dot patternshifted in the sub scanning direction by the amount corresponding to onedot pattern from the center coordinates selected immediately previouslyas the reference point are selected.

In this manner, the center coordinates from A11 to A(N−1)1 are selectedas the reference point and the distance to each distance-measuring pointis calculated with the selected reference point being taken as thecenter, and the distance is stored in the memory. By A(N−1)1 beingselected as the reference point, AN1 becomes the sub scanningdistance-measuring point for A(N−1)1 and there is no data after that,and therefore, the processing is terminated. In a case where thedistance data in all the sections is obtained, at S1607, the CPU 204reads the data from the memory and finds the sub scanning directionmagnification. It is possible to find the sub scanning directionmagnification by formula (1) below.

a=(y21″+y31″+ . . . +yN1″)/(x12″+x22″+ . . . +x(N−1)2″)   formula (1)

It is possible to reflect the sub scanning direction magnificationobtained by the above-described calculation in line reading starttrigger generation timing, enlargement/reduction correction in imageprocessing, and the like.

<Effects and the Like of the Present Embodiment>

It is possible to apply the present embodiment to an image readingapparatus having only one CIS.

According to the present embodiment, by making use of the correctionvalue calculation processing pattern used at the time of deriving theinclination angle of the CIS 106 shown in FIG. 4A, it is also possibleto highly accurately derive the sub scanning direction magnification dueto the diameter error of the upstream-side document conveyance roller107.

Fifth Embodiment <Problem of the Present Embodiment>

FIG. 19A to FIG. 19C are diagrams for explaining the problem of thepresent embodiment, showing an example of reading after connectingprocessing by the conventional calibration processing and an example ofreading after ideal connecting processing.

Conventionally, as shown in FIG. 19A, in order to perform calibration,reading is performed by using a combination of straight-line patterns1904. After that, from the results of reading, an inclination (Φ) ofeach CIS 106 is derived and then the connecting position 113 (X, Y)between the CIS's 106 is derived.

However, in a case where the combination of the straight-line patterns1904 is used for the derivation of the inclination of the CIS 106, thereis an influence of the inclination of the document and the diametererror of the roller, and therefore, resulting in the error factor at thetime of derivation of the inclination of the CIS 106. In a case wherethe connecting position 113 is derived in a state where there is anerror at the time of derivation of the inclination of the CIS 106, it isnot possible to perform the connecting processing correctly. Forexample, as shown in FIG. 19B, in a case where the straight-line pattern1902 is read, the line is read as the zigzag line 1903 as a result thatmisalignment in connecting position occurs due to the error component atthe time of derivation of the inclination of the CIS 106.

Consequently, an object of the present embodiment is to implement theconnecting processing between the CIS's 106 irrespective of the errorcomponent at the time of reading.

The configuration of the scanner 100, the calibration processing, theprocessing to read the correction value calculation processing patternand calculate the correction value, the derivation of the centercoordinates of the circular dot pattern, and the derivation of theinclination angle of the CIS 106 in the present embodiment are the sameas those in the first embodiment (see FIG. 1A to FIG. 10).

<Connecting Position Derivation Processing>

In the following, connecting position derivation processing in thepresent embodiment is explained by using FIG. 20A to FIG. 25. FIG. 20Ato FIG. 20C are diagrams showing coordinate conversion based on theinclination angle of the CIS 106, which is obtained by the immediatelyprevious correction value calculation. FIG. 21A to FIG. 21C are diagramsshowing an outline of the derivation of the connecting position betweenthe CIS's 106. FIG. 22 is a flowchart showing a flow of the connectingposition derivation.

First, at S2201, the CPU 204 performs, based on the inclination angle ofthe CIS 106 obtained by the immediately previous correction valuecalculation, coordinate conversion to convert the center coordinates 601of the circular dot pattern 401 explained in FIG. 6 and FIG. 7 into thestate before the change due to the inclination of the CIS 106. FIG. 20Ais a diagram showing the change in the center coordinates 601 of thecircular dot pattern 401 due to the inclination angle φ of the CIS 106.FIG. 20B is a diagram in a case where the coordinate conversion toconvert the center coordinates 601 of the circular dot pattern 401 intothe state before the change due to the inclination of the CIS 106 isperformed by using the inclination angle φ of the CIS 106, which iscalculated by the immediately previous correction value calculation. Thecoordinate conversion based on the inclination angle φ of the CIS 106 isperformed in accordance with mathematical formulas shown in FIG. 20C.

Here, an aspect is explained in which the connecting position is derivedby performing the coordinate conversion for the center coordinates 601of the circular dot pattern 401. However, it may also be possible toderive the connecting position by reading the document 110 again onwhich the circular dot pattern 401 is printed in the state where thecorrection value of the inclination of the CIS 106 is applied, which isobtained by the immediately previous correction value calculation.

At S2202, the CPU 204 selects, based on the center coordinates 601 ofthe circular dot pattern 401 for which the coordinate conversion hasbeen performed at S2201, processing-target coordinates of an Nth CIS(described as CIS [N]) 2101 and an (N+1)th CIS (described as CIS [N+1])2102. FIG. 21A is a diagram showing arrangement of the circular dotpatterns 401 for the overlapping portion of a plurality of the CIS's106. FIG. 21B shows the results of reading of the CIS [N] 2101 and FIG.21C shows the results of reading of the CIS [N+1] 2102. As shown in FIG.21B, for the data read by the CIS [N] 2101, the center coordinates 601of the circular dot pattern 401 closest from a connecting referenceposition 2103 of the CIS [N] determined in advance as a fixed value areselected as processing-target coordinates 2105 of the CIS [N].Similarly, as shown in FIG. 21C, for the CIS [N+1] 2102 also, the centercoordinates 601 of the circular dot pattern 401 closest from aconnecting reference position 2104 of the CIS [N+1] are selected asprocessing-target coordinates 2106 of the CIS [N+1].

At S2203, the CPU 204 calculates offset values in the X-direction andthe Y-direction based on the difference in the X-coordinate and theY-coordinate between the processing-target coordinates 2105 of the CIS[N] and the processing-target coordinates 2106 of the CIS [N+1], whichare selected at S2202.

At S2204, the CPU 204 calculates the correction value for correcting theconnecting position based on the offset values in the X-direction andthe Y-direction, which are calculated at 52203.

At S2205, the CPU 204 determines whether the correction value forcorrecting the connecting position has been calculated at all theoverlapping portions of the plurality of the CIS's 106. In a case wherethe results of the determination at this step are affirmative, theprocessing advances to S2206. On the other hand, in a case where theresults of the determination at this step are negative (that is, thecalculation of the correction value for correcting the connectingposition has not been completed at all the overlapping portions of theplurality of the CIS's 106), the processing returns to S2202 and thecalculation of the correction value for correcting the connectingposition of the next overlapping portion is performed.

At S2206, the CPU 204 saves the correction values for correcting theconnecting position, which are derived for all the overlapping portionsof the plurality of the CIS's 106, in the memory 208 by writing themthereto.

As a method of applying the found correction value, it is possible toadopt a method of performing reading while changing the access portionof the memory each time of reading based on the correction value writtento the memory at S2206, a method of physically adjusting the position ofthe CIS 106, and the like.

Further, in order to suppress the influence of a quantization error atthe time of derivation of the center coordinates 601 of the circular dotpattern 401 in a case where the connecting position is derived, it isrecommended to arrange a plurality of the circular dot patterns 401 forthe overlapping portion. Then, in the arrangement configurationdescribed previously, at S2202, by using the connecting referencepositions of the CIS [N] and the CIS [N+1], the processing-targetcoordinates 2105, 2106 of the CIS [N] and the CIS [N+1], whichcorrespond to the number of grid points read at the overlapping portion,are selected respectively. In a case where the correction value forcorrecting the connecting position is calculated at S2204, the resultsof averaging a plurality of offset values in the X-direction and theY-direction respectively calculated at S2203 are used.

FIG. 23A to FIG. 23C show the arrangement of the circular dot patternsin a state where there is misalignment at the time of document setting2301. Here, a case is discussed where the misalignment in documentsetting 2301 occurs at the time of a user setting the document 110 asshown in FIG. 23A. In the case such as this, with the configuration inwhich only the one circular dot pattern 401 is arranged for theoverlapping portion of the CIS 106 as shown in FIG. 21A, there is apossibility that not even one pattern is included in the overlappingportion. As a countermeasure against this, as shown in FIG. 23B, twopatterns, that is, a first connecting position correction valuecalculation processing pattern 2302 and a second connecting positioncorrection value calculation processing pattern 2303 are arranged so asto be included for the overlapping portion of the CIS 106. By thecountermeasure shown in FIG. 23B, even in a case where the misalignmentat the time of document setting 2301 exists as shown in FIG. 23C, it ismade possible to derive the connecting position between the CIS's 106.

FIG. 24A to FIG. 24C show pattern arrangement that prevents erroneousderivation of the connecting position in the configuration in which aplurality of dot patterns is arranged for the overlapping portion of theCIS 106. There is a case where a plurality of dot patterns is arrangedfor the overlapping portion of the CIS 106 as shown in FIG. 24A in orderto suppress the influence of the quantization error describedpreviously, or as the countermeasure against the influence ofmisalignment at the time of document setting. Ideally, it is desirablefor the connecting reference position 2103 of the CIS [N] and theconnecting reference position 2104 of the CIS [N+1] to be located on thesame straight line in the document conveyance direction (to be the samein the main scanning direction). However, actually, the positions of theplurality of the CIS's 106 misalign due to the mechanical attachmenttolerance, and therefore, these reference positions misalign from thestraight line. Because of this, depending on the amount of misalignmentof the CIS position, there is a possibility that the same dot patterncannot be selected at S2202, such as a case where a dot pattern 2401closest from the reference coordinates of the CIS [N] and a dot pattern2402 closest from the reference coordinates of the CIS [N+1] areselected.

FIG. 24B shows a configuration including a plurality of dot patternswhose sizes are different from one another. FIG. 24C shows aconfiguration including a plurality of dot patterns whose opticaldensities are different from one another. By adopting the configurationin FIG. 24B, for example, in a case where a dot pattern is selected,which is closest from the connecting reference position 2103 of the CIS[N] and the connecting reference position 2104 of the CIS [N+1] andwhose diameter is larger than Xb, it is made possible to select the samepattern at S2202. Also by adopting the configuration in FIG. 24C, forexample, in a case where a dot pattern is selected, which is closet fromthe connecting reference position 2103 of the CIS [N] and the connectingreference position 2104 of the CIS [N+1] and whose optical density ishigher than Db, it is made possible to select the same pattern at S2202.

By using the configuration as explained above in which a plurality ofdot patterns is arranged for the overlapping portion of the CIS 106, itis made possible to suppress erroneous derivation of the connectingposition. Dot patterns whose colors are made different from one anotherare also effective for suppressing erroneous derivation other than thedot patterns whose sizes or optical densities are made different fromone another.

FIG. 25 shows the internal structure of the CIS [N] 2101 and the CIS[N+1] 2102 and the arrangement of the circular dot patterns 401.Generally, the CIS 106 includes a plurality of chips and in the CIS [N]2101, the positional misalignment dx between chips exists for eachinternal chip 2501 and in the CIS [N+1], it exists for each internalchip 2502. As shown in FIG. 25, for the overlapping portion (referred toas chip overlapping portion) of the chip 2501 within the CIS [N] and thechip 2502 within the CIS [N+1], the circular dot pattern 401 isarranged. Due to this, it is possible to derive the connecting positionbetween the CIS's 106 by ignoring the influence of the gap dx betweenchips. In a case where the influence due to the misalignment in documentsetting 2301 shown in FIG. 23A to FIG. 23C is suppressed, it issufficient to arrange the two circular dot patterns 401 for theoverlapping portion of the chip 2501 within the CIS [N] and the chip2502 within the CIS [N+1].

<Effects of the Present Embodiment>

As explained above, in the present embodiment, irrespective of theinclination at the time of document setting and the error component atthe time of reading, such as the diameter error of the documentconveyance roller, the connecting position between the CIS's 106 isderived in the state where the inclination of the CIS 106 is derivedaccurately. Due to this, it is possible to implement highly accurateconnecting processing between CIS's. Further, it is possible to make useof the same pattern as that at the time of derivation of the inclinationof the CIS 106 in a case where the connecting position between the CIS's106 is derived, and therefore, it is possible to reduce the chartcreation cost.

Sixth Embodiment

In the present embodiment, even in a case where there is eccentricity ofthe document conveyance roller, the connecting position between theCIS's 106 is derived accurately. In detail, by reading a plurality ofcircular dot patterns arranged along the conveyance direction of theupstream-side document conveyance roller 107, the connecting positionbetween the CIS's 106 is derived.

In the following, derivation of the connecting position between theCIS's 106 in the present embodiment is explained by using FIG. 26A, FIG.26B, and FIG. 27. FIG. 26A and FIG. 26B are diagrams explaining apattern for suppressing the influence of eccentricity of the documentconveyance roller. FIG. 27 is a flowchart of processing for suppressingthe influence of eccentricity of the document conveyance roller.

FIG. 26A shows the results of reading of a pattern in a case where thereis eccentricity of the document conveyance roller. By the centerposition of rotation misaligning due to the eccentricity of the documentconveyance roller, the amount of conveyance of the document conveyanceroller changes. Because of this, on the circumference of the documentconveyance roller, in addition to the position Oa at which the amount ofconveyance is average, the position Ob at which the amount of conveyanceis large and the position Oc at which the amount of conveyance is smallexist. An example of the results of reading the circular dot pattern 401in the state where the amount of conveyance changes depending on theposition as described above is the pattern shown in FIG. 26A. By thereading at the position Ob at which the amount of conveyance of thedocument conveyance roller is large, the interval Dga between thecircular dot patterns in close proximity is short. On the other hand, bythe reading at the position Oc at which the amount of conveyance issmall, the interval Dgb between the circular dot patterns in closeproximity is wide. In the state such as this, it is not possible toaccurately derive the connecting position between the CIS's 106.

FIG. 26B shows a derivation method of the connecting position betweenthe CIS's 106 for suppressing the influence of eccentricity of thedocument conveyance roller. The connecting position between the CIS's106 is derived by using a circular dot pattern group (referred to asconnecting position derivation pattern) 2601 in which the circular dotpatterns 401 are arranged one on top of another for the circumferentiallength Yr of the document conveyance roller. S2701 to S2703 are the sameas S2201 to S2203 in FIG. 22, and therefore, explanation is omitted.

At S2704, the CPU 204 determines whether the processing to calculate theoffset values in the X-direction and the Y-direction at S2703 has beencompleted for the circumference of the document conveyance roller. In acase where the results of the determination at this step areaffirmative, the processing advances to S2706. On the other hand, in acase where the results of the determination at this step are negative,the processing advances to S2705.

At 2705, the CPU 204 advances the reading position of data to be read tothe position at which the circular dot pattern to be read next exists.

At S2706, the CPU 204 averages the offset values in the X-direction andthe Y-direction respectively for the circumference of the documentconveyance roller, which are calculated at S2702 to 2705.

At S2707, the CPU 204 calculates the correction value for correcting theconnecting position based on the averaged offset value in theX-direction and the Y-direction, which is calculated at S2706.

At 2708, the CPU 204 determines whether the correction value forcorrecting the connecting position has been calculated at all theoverlapping portions. In a case where the results of the determinationat this step are affirmative, the processing advances to 2709. On theother hand, in a case where the results of the determination at thisstep are negative (that is, in a case where the calculation of thecorrection value for correcting the connecting position has not beencomplete at all the overlapping portions of the plurality of the CIS's106), the processing returns to S2702 and the calculation of thecorrection value for correcting the connecting position of the nextoverlapping portion is performed.

At S2709, the CPU 204 saves the correction values for correcting theconnecting position, which are derived for all the overlapping portionsof the plurality of the CIS's 106, in the memory 208 by writing themthereto.

<Effects of the Present Embodiment>

As explained above, in the present embodiment, the plurality of offsetvalues in the X-direction and the Y-direction between the CIS's 106 isderived for the circumference of the document conveyance roller, and dueto this, it is possible to suppress the influence of eccentricity of thedocument conveyance roller at the time of derivation of the connectingposition between the CIS's 106. By shortening the interval between thecircular dot patterns 401 in the conveyance direction, it is possible touse the coordinates of the many circular dot patterns 401 at the time ofderivation of the connecting position between the CIS's 106, andtherefore, it is possible to accurately derive the connecting positionbetween the CIS's 106.

Seventh Embodiment

In the line image sensor including a plurality of chips, there is a casewhere there exists a manufacturing inter-chip step. FIG. 31A and FIG.31B are diagrams explaining the inter-chip step in the line imagesensor. In the present embodiment, as in the embodiment describedpreviously, explanation is given on the assumption that the line imagesensor is the CIS type and one line image sensor includes 12 chips, butthe type and the number of constituent chips are not limited to those.

The inter-chip step refers to an amount of misalignment dY1 in the subscanning direction in FIG. 31A. In a case where the inclination angle isrepresented by Θ and the ideal value of the inter-chip distance in themain scanning direction is represented by dx, a distance dX in the mainscanning direction in this case is dX=d_(x)×cos Θ. Consequently, dX<dx,and therefore, the inter-chip step will also affect the distance in themain scanning direction. For example, in a case where a patternincluding horizontal lines and oblique lines as shown in FIG. 31B isread, the results of the reading will be a length of XL to which anoriginal main scanning direction length X is compressed.

The tolerance of the inter-chip step such as this depends on themanufacturing specifications of the line image sensor and is determinedby taking into consideration the yield and cost. For example, in acertain kind of line mage sensor, dY1 has a value of 30 μm (dY1=30 μm).However, in the implementation of reading with a higher accuracydemanded in recent years, the reading error between adjacent chipsresulting from the inter-chip step is a problem that cannot be ignored.

Consequently, an object of the present embodiment is to implementcorrection in accordance with the inter-chip step without the need toimprove the current manufacturing specifications.

<Correction Value Calculation Processing Pattern>

In the following, a correction value calculation processing pattern(calibration chart) used in the present embodiment is explained by usingFIG. 4B. FIG. 4B is a diagram showing a correction value calculationprocessing pattern in the present embodiment.

As shown in FIG. 4B, on the document 110, the circular dot patterns 401are printed at equal intervals (dx=dy) in the main scanning directionand the sub scanning direction. The interval dx in the main scanningdirection and the interval dy in the sub scanning direction are lessthan the chip size Cx of the sensor. These circular dot patterns 401 areread by conveying the document by using the upstream-side documentconveyance roller 107 and the downstream-side document conveyance roller108. As the pattern arrangement on the document, a plurality of thecircular dot patterns 401 is printed across the width of the readablearea in the main scanning direction and printed so as to cover thecircumference of the upstream-side document conveyance roller 107 andthe downstream-side document conveyance roller 108 in the sub scanningdirection.

<Derivation of main Scanning Direction Magnification due to Inter-ChipStep>

In the present embodiment, by using the pattern shown in FIG. 4B,calibration accompanied by various correction value calculations isperformed. The flow of the calibration in the present embodiment isbasically the same as that in the first embodiment (see FIG. 5).

By using the pattern shown in FIG. 4B, the center coordinates of thecircular dot pattern 401 are derived (S501) and following this, theprocessing at S502 to S506 is performed. The contents of the presentembodiment are those relating to the derivation processing of the mainscanning direction magnification due to the inter-chip step at S505, andtherefore, explanation of details of other than S505 is omittedappropriately.

At S502, the inclination angle is calculated by making use of that aplurality of circular dot patterns is arranged concentrically so thatthe sum of the coordinates from the reference coordinates is zero. AtS503 and the S504, based on the ratio of distances between the circulardot patterns, the variation of the amount of conveyance in the subscanning direction is calculated.

Before performing the derivation processing of the main scanningdirection magnification due to the inter-chip step at S505, it isnecessary to remove the factors other than the manufacturing factor ofthe chip, such as the inclination at the time of setting the document110, and therefore, it is necessary to perform S505 after S502 to S504.That is, by the processing at S502 to S504 being performed, the errorfactor that remains is only the manufacturing inter-chip step. Thederivation processing of the sub scanning direction magnification due tothe inter-chip step is performed during the connecting positionderivation processing at S506, but because of the reason describedpreviously, details are omitted here.

The derivation method of the distance between the circular dot patternsin the present embodiment is the same as that in the fourth embodiment(FIG. 18). That is, in a case where the coordinates of All afterconversion are taken to be A11′ (0, 0), A12 is converted into A12′(x12′, y12′) and A21 into A21′ (x21′, y21′). At this time, x12′=x12−x11,y12′=y12−y11, x21′=x21−x11, and y21′=y21−y11 hold. In the case such asthis, the inter-dot distance after the derivation processing of theinclination angle shown at S502 is in a relationship as shown in FIG.28A to FIG. 28C.

In a case where the inclination of the chip is found to be φ by theinclination angle derivation of the CIS 106 (S502), A12′, A21′ areconverted into A12″ (x12″, y12″), A21″ (x21″, y21″), respectively, withthe reference coordinates A11′ being taken to be the origin. At thistime, x12″=x12′/cos⁻¹ φ, y12″=y12′+x12′/tan φ, x21″=x21′/cos⁻¹ φ, andy21″=y21′+x21′/tan φ hold.

<Derivation Processing of Inter-Chip Step>

FIG. 29 is a flowchart showing a flow to derive the inter-chip step atS505 in FIG. 5.

First, at S2901, the CPU 204 calculates a ratio of ΔX/ΔY between adistance ΔX between circular dot patterns in close proximity in the mainscanning direction and a distance ΔY between circular dot patterns inclose proximity in the sub scanning direction by using the relativeconverted coordinates described previously while shifting the referencecoordinates in the main scanning direction.

Originally, the ratio ΔX/ΔY between the distance ΔX between circular dotpatterns in close proximity in the main scanning direction and thedistance ΔY between circular dot patterns in close proximity in the subscanning direction should be “R” (R≈1) without exception. However, in acase where there is an inter-chip step, the value changes between thenth ΔXn/ΔYn and the (n+1)th ΔXn+1/ΔYn+1 and a numerical value smallerthan “R” is calculated as a result.

For example, in a case where the configuration is designed so that thethree circular dot patterns 401 described previously are arranged withinone chip, by the first calculation, which corresponds to the inter-chipstep, a value smaller than “R” is calculated and by the two calculationsafter this, “R” is calculated repeatedly. At S2902, the CPU 204determines whether the repeated pattern such as this has been detected(in other words, whether the value of ΔX/ΔY changes in units of chipsizes). In a case where the results of the determination at this stepare affirmative, the processing advances to S2903. On the other hand, ina case where the results of the determination at this step are negative,the detection of an inter-chip step is regarded as having failed and theprocessing is terminated. In a case where the detection has failed, itmay also be possible to perform retry a predetermined number of times asneeded.

At S2903, the ratio obtained by the first-time ΔX/ΔY calculation foreach chip is stored in the memory 208.

It is possible to grasp in advance the circular dot pattern arranged atthe position corresponding to the inter-chip step based on thepositional relationship between the CIS 106 and the calibration chart.Consequently, it may also be possible to perform the calculation of therepeated value within the chip as the calculation performed only oncefor checking the accuracy of the detected value at the inter-chip stepportion, or omit the calculation.

FIG. 30A and FIG. 30B show an example of the derivation results of theinter-chip step in the present embodiment. FIG. 30A is a schematicdiagram showing a positional relationship between the CIS including 12chips and the ratios stored in the memory 208 at S2903 describedpreviously. In the case of FIG. 30A, the leftmost chip is taken to bethe absolute reference, and therefore, the values for the 11 chipsexcluding the leftmost chip are stored. The value stored here is not theabsolute amount for the leftmost chip but the relative amount for the(n−1)th chip.

FIG. 30B is a schematic diagram showing a relationship between two chipsamong the 12 chips shown in FIG. 30A and the circular dot patterns. Asexplained so far, each value of ΔXx−2/ΔYy−2, ΔXx−1/ΔYy−1, ΔXx+1/ΔYy+1,and ΔXx+2/ΔYy+2 derived by using the circular dot patterns for whichreading is performed within the same chip is “R” (here, 1). On the otherhand, as the value of ΔXx/ΔYy derived by using the circular dot patternslocated across two chips, a value less than “R” (in this example, 0.99)is obtained in a case where there is an inter-chip step. The value thatis stored in the memory 208 at S3003 is a value derived by using thecircular dot patterns located across two chips, such as ΔXx/ΔYy in FIG.30B.

In a case where this reading is performed actually, after temporarilystoring the read image data in the memory 208, the absolute amount fromthe leftmost chip, that is, the inter-chip step amount is calculatedbased on the ratio stored at S2903 described previously and the imagedata is corrected in accordance with the value. By doing so, it is madepossible to exclude the error factor in the main scanning direction dueto the inter-chip step.

<Effects and the Like of the Present Embodiment>

It is also possible to apply the present embodiment to an image readingapparatus having only one CIS.

According to the present embodiment, it is made possible to implementcorrection in accordance with the inter-chip step without the need toimprove the current manufacturing specifications. Consequently, it ismade possible to implement highly accurate image reading.

Eighth Embodiment <Problem of the Present Embodiment>

An object of the present embodiment is to make it possible to ignore theinfluence of the chart attachment error in the processing to detectmisalignment in reading position in the sub scanning direction.

<Calculation of Magnification in Sub Scanning Direction>

The configuration of the scanner 100, the calibration processing, theprocessing to read the correction value calculation processing patternand calculate the correction value, the derivation of the centercoordinates of the circular dot pattern, and the derivation of theinclination angle of the CIS 106 in the present embodiment are the sameas those in the first embodiment (see FIG. 1A to FIG. 10).

In a case where the calculation of the inclination angle of the CIS 106is completed, following this, the derivation of the sub scanningdirection magnification is performed. In the present embodiment, thederivation of the magnification in the sub scanning direction issubstantially the same as that in the fourth embodiment (see FIG. 16 toFIG. 18) and the derivation of the main scanning direction magnificationis the same as that in the seventh embodiment (see FIG. 28A to FIG.28C).

Here, explanation is given by taking a case where the pattern shown in(a) in FIG. 17 is read and the processing shown in FIG. 16 is performed.A length L in the sub scanning direction of the read pattern iscalculated in accordance with formula (2) below in a case where theinter-dot distance on the pattern is taken to be D and the ideal subscanning direction distance by which a document is conveyed by onerotation of the conveyance roller is taken to be F.

L=D×N>F×cos θ max   formula (2)

At this time, N indicates the number (integer not less than 2) of dotscorresponding to one period in the sub scanning direction and θ maxindicates the maximum value of the inclination of the pattern withrespect to the sub scanning direction, which may occur at the time ofdot pattern reading. It is desirable for the inter-dot distance D to beD=F/(N−1) ideally. In this case, N dots are read in the sub scanningdirection, and therefore, N pieces of data (nine pieces of data in thecase of FIG. 17) are stored finally as the center coordinates data.

At S1606, the CPU 204 determines whether the center coordinates that canbe selected as the reference point remain based on the stored centercoordinates data. In a case where the results of the determination atthis step are affirmative, the processing advances to S1607. On theother hand, in a case where the results of the determination at thisstep are negative (that is, in a case where the selectable centercoordinates remain), the center coordinates of the circular dot patternshifted in the sub scanning direction by an amount corresponding to onedot pattern from the center coordinates selected immediately previouslyas the reference point are selected.

For example, in a case where the center coordinates selected as theimmediately previous reference point in the case of FIG. 17 is A11, A12is selected as the next reference point in the sub scanning direction.As a result of repeatedly performing the processing at S1601 to S1606 inthis manner, the center coordinates of A11 to A(N−1)1 are selected asthe reference points and the distance to each distance-measuring pointis calculated with the selected reference point being taken to be acenter and stored in the memory. By A(N−1)1 being selected as thereference point, AN1 becomes the sub scanning distance-measuring pointfor A(N−1)1 and there is no data after that, and therefore, theprocessing is terminated. In a case where the distance data in all thesections is obtained, at S1607, the CPU 204 finds the sub scanningdirection magnification a by reading the data from the memory. Asdescribed previously, it is possible to find the sub scanning directionmagnification a by formula (1).

However, the denominator in formula (1) is the expectation value of theamount of conveyance and the numerator corresponds to the actual valueof the amount of conveyance and in a case where the inclination of thepattern is supposed, the numerator is a value larger than theexpectation value F of the amount of conveyance by the rotationcorresponding to one circumference of the conveyance roller.Consequently, in order to lessen the influence of variation in eachsection due to the eccentricity of the conveyance roller, it issufficient to correct the area exceeding the expectation value F of theamount of conveyance. To explain in detail, in the main scanningdirection distance (that is, the denominator in formula (1)), in placeof x(N−1)2″, Δx(N−1)2″=(F−x12″×x22″− . . . −x(N−2)2″)/x(N−1)2″ is added.Further, in the sub scanning direction distance (that is, the numeratorin formula (1)), in place of yN1″, ΔyN1″=yN1″×Δx(N−1)2″ is added.

One of the reasons that it is possible to calculate the sub scanningdirection magnification a without taking into consideration theattachment inclination of the document 100 to the scanner 100 asdescribed above is that the positional relationship of the centercoordinates of the plurality of circular dot patterns does not change bythe inclination of the pattern. In a case where the straight-linepattern as shown in FIG. 19A and FIG. 31B is used, a distortion occursin the straight line due to the compound factors, such as the attachmentinclination of the document 110 to the scanner 100, the inclination ofthe CIS 106, and the error in the amount of conveyance, andclassification thereof becomes difficult.

Further, another reason is that the circular dot patterns are arrangedwith an angle of 90 degrees being provided in the main scanningdirection and in the sub scanning direction with the reference point onthe chart as a center, and therefore, the change in the ratio of thedistances due to the inclination of the pattern is constant.

Consequently, by adopting the pattern of the present embodiment, it ismade possible to find the sub scanning direction magnification with ahigh accuracy by a small number of pieces of simple calculationprocessing.

It is possible to reflect the sub scanning direction magnificationobtained by the calculation of the present embodiment in the linereading start trigger generation timing, the enlargement/reductioncorrection in the image processing, and the like. For example, in a caseof a reading apparatus whose conveyance motor is a stepping motor, it issufficient to perform correction so as to generate a trigger for eachrotation angle obtained by dividing the reference value of the motorrotation angle necessary to generate the line reading start trigger bythe sub scanning direction magnification a. Further, in a case where theconveyance motor is a DC motor and the reading start trigger isgenerated by an encoder attached to the conveyance roller, it issufficient to divide the reference value by the sub scanning directionmagnification a for the encoder count value used for trigger generation.

<Effects and the Like of the Present Embodiment>

It is possible to apply the present embodiment to an image readingapparatus having only one CIS.

According to the present embodiment, it is made possible to ignore theinfluence of the chart attachment error in the processing to detectmisalignment in reading position in the sub scanning direction.

Ninth Embodiment

In the present embodiment, a correction value for correcting a readingerror due to the influence of eccentricity of the document conveyanceroller is found. Specifically, the influence due to the eccentricity ofthe document conveyance roller refers to a variation in the amount bywhich a document is conveyed per unit rotation angle, which occurs in acase where the axis of the document conveyance roller misaligns slightlyfrom the center due to the manufacturing tolerance. The amount ofconveyance in the unit section may be large or small depending on theposition and the amount of errors due to the eccentricity of thedocument conveyance roller will be zero in a case where the errorscorresponding to one circumference of the roller are summed.

<Suppression of Influence due to Eccentricity of Document ConveyanceRoller>

In the following, processing to suppress the influence due to theeccentricity of the document conveyance roller in the present embodimentis explained by using FIG. 32. FIG. 32 is a flowchart of a sub flowrepresenting details of the suppression processing of the eccentricityinfluence at S504 in FIG. 5.

For the calculation of an error due to eccentricity, it is possible touse the sub scanning direction distance (y21″, y31″, . . . , yN1″) inthe converted coordinates data used at the time of deriving the subscanning direction magnification described previously. In a case wherethe sub scanning direction magnification is not derived in advance,before the flow in FIG. 32, by the flow of S1601 to S1606 in FIG. 16,the sub scanning direction distance after conversion is found. In thesub scanning direction distance obtained here, the amount correspondingto the variation due to the sub scanning direction magnification is alsoincluded. Consequently, at S3201, the CPU 204 divides all the subscanning direction distances by the sub scanning direction magnificationa. In a case where the sub scanning direction distances divided by thesub scanning direction magnification a are taken to be Δy2, Δy3, . . . ,ΔyN, ΔyN is represented as yN1″/a(ΔyN=yN1″/a).

At S3202, the CPU 204 takes this ΔyN as the amount of conveyance perunit section and calculates an approximate curve with the vertical axisbeing taken to be the amount of conveyance Δy per unit section and thehorizontal axis being taken to be the accumulated value y of Δy. Byperforming cumulative addition for all the sub scanning directiondistances between dots included in the area whose amount of conveyanceis larger than or equal to the amount of conveyance F corresponding toone circumference of the document conveyance roller and plotting theobtained values, for example, an approximate curve as shown by a brokenline in FIG. 33 is obtained.

At S3203, the CPU 204 stores the timing correction value. By using theformula of the approximate curve obtained at S3202, it is made possibleto obtain a correction value for correcting the reading start triggergeneration timing of the line sensor at an arbitrary rotation angle ofthe document conveyance roller. In the memory of the scanner 100, atable for storing the timing correction value for the amount ofconveyance of the unit section is stored and the timing correction valuecalculated at S3203 is stored in this table.

The timing correction data stored in the timing correction table is readat the time of the normal reading operation and used to finely adjustthe line reading start trigger generation timing. As a result of thisfine adjustment, for the section in which the amount of conveyance inthe unit section is larger than a theoretical value, the line readingstart trigger generation timing is advanced ahead of an initial valueand for the section in which the amount of conveyance in the unitsection is smaller than the theoretical value, the generation timing isdelayed behind the initial value. Due to this, even in a case wherethere is a variation in the amount of conveyance due to the eccentricityof the document conveyance roller, the line reading period becomesconstant, and therefore, it is possible to improve the reading quality.

<Effects and the Like of the Present Embodiment>

It is possible to apply the present embodiment to an image readingapparatus having only one CIS.

According to the present embodiment, it is possible to suppress theinfluence due to the eccentricity of the document conveyance roller, andtherefore, it is possible to improve the reading accuracy.

In the present embodiment, for the sake of simplification ofexplanation, as shown in FIG. 33, the number of circular dot patterns tobe read during conveyance corresponding to one circumference of thedocument conveyance roller is set to a small number. However, in orderto improve the accuracy of correction, it is better to increase thenumber of patterns in the sub scanning direction to reduce the distancebetween patterns. However, in a case where the distance between patternsis short, the influence of an error at the time of distance calculationbecomes large, and therefore, it is also possible to improve theaccuracy by selecting a plurality of main scanning distance-measuringpoints and sub scanning distance-measuring points with the referencepoint being taken as a center and finding an average of distances, andso on.

Other Embodiments

Embodiment(s) of the present invention can also be realized by acomputer of a system or apparatus that reads out and executes computerexecutable instructions (e.g., one or more programs) recorded on astorage medium (which may also be referred to more fully as a‘non-transitory computer-readable storage medium’) to perform thefunctions of one or more of the above-described embodiment(s) and/orthat includes one or more circuits (e.g., application specificintegrated circuit (ASIC)) for performing the functions of one or moreof the above-described embodiment(s), and by a method performed by thecomputer of the system or apparatus by, for example, reading out andexecuting the computer executable instructions from the storage mediumto perform the functions of one or more of the above-describedembodiment(s) and/or controlling the one or more circuits to perform thefunctions of one or more of the above-described embodiment(s). Thecomputer may comprise one or more processors (e.g., central processingunit (CPU), micro processing unit (MPU)) and may include a network ofseparate computers or separate processors to read out and execute thecomputer executable instructions. The computer executable instructionsmay be provided to the computer, for example, from a network or thestorage medium. The storage medium may include, for example, one or moreof a hard disk, a random-access memory (RAM), a read only memory (ROM),a storage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc(BD)TM), a flash memory device, a memory card, and the like.

According to one embodiment of the present invention, it is madepossible to perform calibration in an image reading apparatus having aline image sensor with a high accuracy.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2019-185971, filed Oct. 9, 2019, which is hereby incorporated byreference wherein in its entirety.

1. An image reading apparatus comprising: a line image sensor in whichreading elements for reading an image are arrayed in a predetermineddirection; a first derivation unit configured to, based on read dataacquired by reading a chart on which a plurality of dot patterns isprinted with the line image sensor, derive coordinates of each of theplurality of dot patterns; a second derivation unit configured to derivean inclination angle of the line image sensor based on the coordinatesderived by the first derivation unit; and a first calculation unitconfigured to calculate a first correction value for correcting theinclination of the line image sensor based on the inclination anglederived by the second derivation unit, wherein on the chart, theplurality of dot patterns is arranged isolatedly from one another, theplurality of dot patterns includes at least one dot pattern groupincluding one reference dot pattern and a plurality of peripheral dotpatterns around the reference dot pattern, and the plurality ofperipheral dot patterns is arranged so that a sum of coordinates fromreference coordinates is zero in a case where coordinates of thereference dot pattern are taken to be the reference coordinates. 2.-24.(canceled)